Temperature regulation for autonomous vehicle delivery

ABSTRACT

Systems and methods are provided for temperature regulation in an autonomous vehicle. In particular, systems and methods are provided for regulating the interior temperature of a delivery container in an autonomous vehicle. In various implementations, the delivery container includes one or more compartments, and a thermal management system is provided for regulating the temperature of each of the compartments.

FIELD OF THE DISCLOSURE

The present disclosure relates generally to autonomous vehicles (AVs)and to systems and methods for autonomous vehicle delivery of goods.

BACKGROUND

Autonomous vehicles, also known as self-driving cars, driverlessvehicles, and robotic vehicles, are vehicles that use multiple sensorsto sense the environment and move without human input. Automationtechnology in the autonomous vehicles enables the vehicles to drive onroadways and to accurately and quickly perceive the vehicle'senvironment, including obstacles, signs, and traffic lights. Thevehicles can be used to pick up passengers and drive the passengers toselected destinations. The vehicles can also be used to pick up packagesand/or other goods and deliver the packages and/or goods to selecteddestinations.

SUMMARY

Systems and methods are provided for temperature regulation in anautonomous vehicle. In particular, systems and methods are provided forregulating the interior temperature of a delivery container inside anautonomous vehicle. In various implementations, the delivery containerincludes one or more compartments, and a thermal management system isprovided for regulating the temperature of each of the one or morecompartments.

According to one aspect, a method for regulating temperature in forautonomous vehicle delivery includes receiving a delivery requestincluding a selected temperature, selecting an autonomous vehicle tofulfill the delivery request, wherein the autonomous vehicle has adelivery container, directing the selected autonomous vehicle to apick-up location, adjusting a delivery container temperature tocorrespond to the selected temperature, and transporting a package inthe delivery container to a drop off location.

According to some implementations, the method further includesmonitoring the delivery container temperature. In some examples, athermal management system monitors the delivery container temperature.According to some examples, monitoring the delivery containertemperature includes continuously monitoring the delivery containertemperature. According to some examples, monitoring the deliverycontainer temperature includes periodically monitoring the deliverycontainer temperature.

In some implementations, the method includes determining whether thedelivery container temperature corresponds to the selected temperatureand outputting a determination. In some examples, the method includesadjusting a delivery container temperature is based at least in part onthe determination.

In some implementations, the selected temperature includes a temperaturerange. In some examples, the selected temperature and/or the temperaturerange is represented to a user by a descriptive word.

In some implementations, adjusting the delivery container temperatureincludes one of heating the delivery container and cooling the deliverycontainer. In some implementations, adjusting the delivery containertemperature includes receiving an input from an HVAC system. In someimplementations, adjusting the delivery container temperature includesincreasing the delivery container temperature by utilizing heatgenerated by at least one of an onboard computer and a battery. In someimplementations, adjusting the delivery container temperature includesutilizing an external environment temperature and inputting the externalenvironment temperature to the delivery container. In some examples, theexternal environment includes air inside the autonomous vehicle. In someexamples, the external environment includes air outside the autonomousvehicle.

In some implementations, the delivery container includes a firstcompartment and a second compartment, and where adjusting the deliverycontainer temperature includes: adjusting a first temperature of thefirst compartment, and adjusting a second temperature of the secondcompartment. In various examples, the first temperature is differentfrom the second temperature.

According to one aspect, a system for autonomous vehicle deliveryincludes a plurality of autonomous vehicles each having a respectivedelivery container and a remote computing system. The remote computingsystem is configured to receive a package delivery request including aselected temperature, select an autonomous vehicle from the plurality ofautonomous vehicles to fulfill the package delivery request, and directthe selected autonomous vehicle to a pick-up location. Each of theplurality of autonomous vehicles is configured to adjust a deliverycontainer temperature of the respective delivery container to correspondto the selected temperature, and transport a package in the respectivedelivery container to a drop off location.

In some implementations, the respective delivery container includes afirst compartment and a second compartment, and wherein each of theplurality of autonomous vehicles is configured to adjust the deliverycontainer temperature by adjusting a first temperature of the firstcompartment, and adjusting a second temperature of the secondcompartment.

In some implementations, each of the plurality of autonomous vehiclesincludes a thermal management system, and wherein the thermal managementsystem adjusts the delivery container temperature.

In some implementations, the thermal management system uses thermalenergy from one of a battery, an onboard computer, and an externalenvironment to adjust the delivery container temperature.

According to one aspect, a vehicle for delivering packages includes adelivery container, wherein an inside of the delivery container istemperature regulated, a processor for receiving a routing instructionincluding a selected temperature for the delivery container andmonitoring a delivery container temperature, and a thermal managementsystem for adjusting the delivery container temperature.

In some implementations, the thermal management system further manages abattery temperature and an onboard computer temperature.

BRIEF DESCRIPTION OF THE DRAWINGS

To provide a more complete understanding of the present disclosure andfeatures and advantages thereof, reference is made to the followingdescription, taken in conjunction with the accompanying figures, whereinlike reference numerals represent like parts, in which:

FIG. 1 is a diagram illustrating an autonomous vehicle, according tosome embodiments of the disclosure;

FIG. 2 is a diagram illustrating a fleet of vehicles in communicationwith a central computer, according to some embodiments of thedisclosure.

FIG. 3 is a diagram illustrating an autonomous vehicle having a deliverycontainer, according to some embodiments of the disclosure;

FIG. 4 is a diagram illustrating inputs to a delivery container,according to some embodiments of the disclosure;

FIG. 5 is a diagram illustrating a system for package delivery,according to some embodiments of the disclosure;

FIG. 6 is a flow chart illustrating a method of regulating temperaturefor autonomous vehicle delivery, according to some embodiments of thedisclosure; and

FIG. 7 shows an example embodiment of a system for implementing certainaspects of the present technology.

DETAILED DESCRIPTION

Systems and methods are provided for temperature regulation in anautonomous vehicle. In particular, systems and methods are provided forregulating the interior temperature of an autonomous vehicle. In variousimplementations, one or more compartments is included inside anautonomous vehicle, and systems and methods are provided for regulatingthe temperature of each of the one or more compartments. In variousimplementations, the container inside the autonomous vehicle is used ina peer-to-peer delivery system.

In various implementations, the compartment inside the autonomousvehicle is used for delivering goods. The goods placed in thecompartment, to be delivered by the autonomous vehicle, may benefit fromcooling or heating. For example, food deliveries benefit fromtemperature regulation—some food deliveries may benefit from stayingwarm, while other food deliveries may benefit from staying cold. In someimplementations, passive cooling of the compartment is provided using acooling source inside or outside the AV. Some cooling sources includethe HVAC system of the AV, and, potentially, outside air. In someimplementations, passive heating of the compartment is provided usingheat sources inside or outside the AV. Some heating sources include theAV computer, the AV battery, the HVAC system of the AV, and,potentially, outside air. Passive cooling and heating of the deliveryusing cool and hot sources in or outside of the AV improves the energyefficiency of the AV as compared to having a dedicated heating orcooling unit for the compartment.

In various implementations, sensors are used to monitor the temperatureof the compartment(s). In some examples, sensor data in the compartmentis used as inputs to cooling and/or heating systems, to regulate thetemperature in the compartment. In some examples, sensor data in thecompartment is used as feedback to cooling and/or heating systems tohelp regulate temperature in the compartment.

In some implementations, a removable box is positioned in the back seat.In various examples, the box includes multiple compartments. In someexamples, the box includes mobile dividers that can be used to customizethe size of one or more compartments inside the box. Each compartment inthe box can be set to a unique temperature. In one example, the boxincludes one compartment set to cool and a second compartment set toheat.

In some implementations, systems and methods are provided fortemperature regulation of the interior of the vehicle for passengers.For example, as discussed above, the heat generated by the AV computercan be used to heat the passenger area of the vehicle.

In various implementations, the AV can be converted from passenger useto cargo/delivery use and back again. The temperature regulation systemis designed to function in both the cargo/delivery mode and thepassenger mode.

Various examples of the present technology are discussed in detailbelow. While specific implementations are discussed, it should beunderstood that this is done for illustration purposes only. A personskilled in the relevant art will recognize that other components andconfigurations may be used without parting from the spirit and scope ofthe present technology. In some instances, well-known structures anddevices are shown in block diagram form in order to facilitatedescribing one or more aspects. Further, it is to be understood thatfunctionality that is described as being carried out by certain systemcomponents may be performed by more or fewer components than shown.

FIG. 1 is a diagram 100 illustrating an autonomous vehicle 110,according to some embodiments of the disclosure. The autonomous vehicle110 includes a sensor suite 102, an onboard computer 104, and a deliverycontainer 112. In various examples, package and/or goods are placed inthe delivery container for delivery by the autonomous vehicle 110. Invarious implementations, the autonomous vehicle 110 uses sensorinformation from the sensor suite 102 to determine its location, tonavigate traffic, and to sense and avoid various obstacles.

The sensor suite 102 includes localization and driving sensors. Forexample, the sensor suite may include one or more of photodetectors,cameras, RADAR, SONAR, LIDAR, GPS, inertial measurement units (IMUs),accelerometers, microphones, strain gauges, pressure monitors,barometers, thermometers, altimeters, wheel speed sensors, and acomputer vision system.

In various examples, the sensor suite 102 includes cameras implementedusing high-resolution imagers with fixed mounting and field of view. Infurther examples, the sensor suite 102 includes LIDARs implemented usingscanning LIDARs. Scanning LIDARs have a dynamically configurable fieldof view that provides a point-cloud of the region intended to scan. Instill further examples, the sensor suite 102 includes RADARs implementedusing scanning RADARs with dynamically configurable field of view.

The autonomous vehicle 110 includes an onboard computer 104, whichfunctions to control the autonomous vehicle 110. The onboard computer104 processes sensed data from the sensor suite 102 and/or othersensors, in order to determine a state of the autonomous vehicle 110.Based upon the vehicle state and programmed instructions, the onboardcomputer 104 controls and/or modifies driving behavior of the autonomousvehicle 110.

According to some implementations, the onboard computer 104 generates asignificant amount of heat. The heat from the onboard computer 104 canbe used to heat the delivery container 112, any other cargo compartment,and/or a passenger area.

The onboard computer 104 functions to control the operations andfunctionality of the autonomous vehicles 110 and processes sensed datafrom the sensor suite 102 and/or other sensors in order to determinestates of the autonomous vehicles no. In some implementations, theonboard computer 104 is a general-purpose computer adapted for I/Ocommunication with vehicle control systems and sensor systems. In someimplementations, the onboard computer 104 is any suitable computingdevice. In some implementations, the onboard computer 104 is connectedto the Internet via a wireless connection (e.g., via a cellular dataconnection). In some examples, the onboard computer 104 is coupled toany number of wireless or wired communication systems. In some examples,the onboard computer 104 is coupled to one or more communication systemsvia a mesh network of devices, such as a mesh network formed byautonomous vehicles.

According to various implementations, the autonomous driving system 100of FIG. 1 functions to enable an autonomous vehicle 110 to modify and/orset a driving behavior in response to parameters set by vehiclepassengers (e.g., via a passenger interface) and/or other interestedparties (e.g., via a vehicle coordinator or a remote expert interface).Driving behavior of an autonomous vehicle may be modified according toexplicit input or feedback (e.g., a passenger specifying a maximum speedor a relative comfort level), implicit input or feedback (e.g., apassenger's heart rate), or any other suitable data or manner ofcommunicating driving behavior preferences.

The autonomous vehicle 110 is preferably a fully autonomous automobile,but may additionally or alternatively be any semi-autonomous or fullyautonomous vehicle. In various examples, the autonomous vehicle 110 is aboat, an unmanned aerial vehicle, a driverless car, a golf cart, atruck, a van, a recreational vehicle, a train, a tram, a three-wheeledvehicle, or a scooter. Additionally, or alternatively, the autonomousvehicles may be vehicles that switch between a semi-autonomous state anda fully autonomous state and thus, some autonomous vehicles may haveattributes of both a semi-autonomous vehicle and a fully autonomousvehicle depending on the state of the vehicle.

In various implementations, the autonomous vehicle 110 includes athrottle interface that controls an engine throttle, motor speed (e.g.,rotational speed of electric motor), or any other movement-enablingmechanism. In various implementations, the autonomous vehicle 110includes a brake interface that controls brakes of the autonomousvehicle 110 and controls any other movement-retarding mechanism of theautonomous vehicle 110. In various implementations, the autonomousvehicle 110 includes a steering interface that controls steering of theautonomous vehicle 110. In one example, the steering interface changesthe angle of wheels of the autonomous vehicle. The autonomous vehicle110 may additionally or alternatively include interfaces for control ofany other vehicle functions, for example, windshield wipers, headlights,turn indicators, air conditioning, etc.

FIG. 2 is a diagram 200 illustrating a fleet of vehicles 202 a, 202 b,202 c in communication with a central computer 210, according to someembodiments of the disclosure. As shown in FIG. 2 , the vehicles 202 a,202 b, 202 c communicate wirelessly to a cloud 204 and a centralcomputer 210. The central computer 210 includes a database ofinformation from the vehicles in the fleet and a routing coordinator.Autonomous vehicle fleet routing refers to the routing of multiplevehicles in a fleet, and includes routing back to a service center forupdates, repair, and maintenance.

FIG. 3 is a diagram 300 illustrating an autonomous vehicle 310 having adelivery container 312 and a heating, ventilation, and air conditioning(HVAC) system 308 according to some embodiments of the disclosure. Asillustrated in FIG. 3 , the HVAC system 308 is connected to the deliverycontainer 312. In particular, the HVAC 308 can be used to heat or coolthe delivery container 312. Additionally, the onboard computer 304 isconnected to the delivery container 312. Heat from the onboard computer304 can be used to heat the delivery container 312. Additionally, insome examples, the onboard computer 304 monitors the temperature of thedelivery container 312. In some examples, the onboard computer 304provides feedback regarding the temperature of the delivery container312 to the HVAC 308, and the HVAC 308 adjusts the temperature of thedelivery container 312.

In some implementations, the autonomous vehicle 312 includes a thermalmanagement system. The thermal management system manages the temperatureof the battery. In particular, the battery can become hot, and thethermal management system cools the battery. In some examples, thethermal management system manages the temperature of the onboardcomputer 304. The onboard computer 304 can also become hot, and thethermal management system cools the onboard computer 304.

In some implementations, the delivery container 312 includes acompartment configured to cook or bake foods. In one example, thedelivery container 312 includes a sous vide compartment. At pick-up, afood item can be inserted into the sous vide compartment for sous videcooking, and a timer is set for sous vide cooking of the food item.While the autonomous vehicle 310 is driving from the pick-up location tothe drop-off location, the food item cooks in the delivery container 312cooking compartment. At drop-off, the food item is ready, and thefreshly cooked food item is delivered to the drop-off location.

FIG. 4 is a diagram 400 illustrating inputs to a delivery container 412,according to some embodiments of the disclosure. As shown in FIG. 4 ,the delivery container 412 has four inputs: an HVAC system 402, theexternal environment 404, an on board computer 406, and a battery 408.Additionally, the delivery container 412 is in communication with thethermal management system 420. Each of the inputs 402, 404, 406, 408 isconnected to the delivery container 412 via an input line. A first inputline 410 a connects the HVAC system 402 to the delivery container 412. Asecond input line 410 b connects the external environment 404 to thedelivery container 412. A third input line 410 c connects the onboardcomputer 406 to the delivery container 412. A fourth input line 410 dconnects the battery 408 to the delivery container 412.

According to some implementations, one or more of the first 410 a,second 410 b, third 410 c, and fourth 410 d input lines allow air oranother gas to pass through to the delivery container 412. In someexamples, one or more of the first 410 a, second 410 b, third 410 c, andfourth 410 d input lines input a gas (such as air) into the deliverycontainer 412 that changes the temperature inside the deliverycontainer.

The thermal management system 420 communicates with the deliverycontainer 412 and manages the temperature of the delivery container 412.The thermal management system 420 monitors the temperature of the insideof the delivery container 412. In some implementations, the thermalmanagement system 420 is also in communication with one or more of theHVAC system 402, the onboard computer 406, and the battery 408. Thethermal management system 420 can adjust the temperature of the deliverycontainer 412 using one or more of the HVAC system 402, the externalenvironment 404, the on board computer 406, and the battery 408 as aheating or cooling source.

In one implementation, the thermal management system 420 monitors thetemperature inside the delivery container 412 and in some examples, thethermal management system 420 sends instructions to change thetemperature of inside the delivery container 412. In some examples, thethermal management system 420 causes the temperature inside of thedelivery container 412 to increase. In some examples, the thermalmanagement system 420 causes the temperature inside of the deliverycontainer to decrease.

There are multiple possible implementations for changing the temperatureinside the delivery container 412. Following are some implementationsfor heating the delivery container 412. In particular, in some examples,the HVAC 402 inputs hot air into the delivery container 412. In someexamples, when the external environment 404 temperature is warmer thanthe target temperature for the delivery container 412, hot external airis input to the delivery container 412. In one example, external airincludes air inside the autonomous vehicle. In one example, external airincludes air outside the autonomous vehicle. The external environment404 outside air temperature can be accessed by opening a window of theautonomous vehicle.

In some examples, heat generated by the onboard computer 408 heats airor another gas that is input to the delivery container 412 to increasethe temperature of the delivery container 412. In some examples, heatgenerated by the onboard computer 408 is used to increase thetemperature the delivery container 412 through thermal conduction to thedelivery container 412. In some examples, heat generated by the battery408 heats air or another gas that is input to the delivery container 412to increase the temperature of the delivery container 412. In someexamples, heat generated by the battery 408 is used to is used toincrease the temperature of the delivery container 412 through thermalconduction to the delivery container 412.

In some implementations, the thermal management system 420 sendsinstructions to a delivery container 412 heating element. In variousexamples, the instructions include instructions to turn on the heatingelement and/or instructions to turn off the heating element. In someexamples, the instructions include instructions to turn on and/or off aportion of the heating element. In one example, the heating element isan electric heating element. In some examples, the thermal managementsystem 420 receives feedback information from the delivery container 412including the temperature inside the delivery container 412. In someexamples, the delivery container 412 includes multiple compartments, andthe temperature of each compartment is independently monitored andadjusted.

In some implementations, the thermal management system 420 sendsinstructions that cause heat from another source to be transferred tothe delivery container 412. In one example, the thermal managementsystem 420 sends instructions that cause heat from the battery 408 to betransferred to the delivery container 412. Similarly, in some examples,the thermal management system 420 sends instructions that cause the HVAC402 to heat or cool the delivery container 412. In some examples, thethermal management system 420 sends instructions that cause externalenvironment 404 air to heat or cool the delivery container. In someexamples, the thermal management system 420 sends instructions thatcause heat from the onboard computer 406 to be transferred to thedelivery container 412.

In some implementations, the thermal management system 420 is integratedinto the onboard computer 406. In some implementations, the thermalmanagement system 420 manages the temperature of the onboard computer406. In some implementations, the thermal management system 420 managesthe temperature of the battery 408.

In some implementations, a remote computer sends instructions foradjusting the temperature in the delivery container 412. The remotecomputer may send instructions for heat from one of the input sourcesshown in FIG. 4 to be transferred to the delivery container 412. Theremote computer may send instructions for cool air from one of the inputsources shown in FIG. 4 to be transferred to the delivery container 412.

As discussed above, in various implementations, heat is transferred fromone or more of the HVAC system 402, the external environment 404, the onboard computer 406, and the battery 408. One advantage of using one ormore of the on board computer 406, and the battery 408 is that theseelements generate heat and thus no further energy or power is expendedin creating heat for the delivery container. Similarly, in someinstances, the external environment 404 contains sufficient heat that nofurther energy or power is expended in creating heat for the deliverycontainer. The heat generated by the elements can be transferred to thedelivery container via one or thermal conduction, thermal convection,thermal radiation, and transfer of energy by phase changes.

Various heating system types can be integrated into the autonomousvehicle to heat the delivery container, and/or to heat a specificpackage. In one example, electric heating is used. Electric heatingconverts electrical energy to heat energy. The heating element is anelectrical resistor, and current passing through the resistor convertsthe electrical energy into heat energy. In some examples, a nichromewire is used as a heating element. In another example, a heat pump usesan electric motor to drive a refrigeration cycle that draws heat energyfrom another source and directs the heat into the delivery container. Inone example, the source of the heat energy is one or more of the battery408, the onboard computer 406, and the external environment 404. Theexternal environment 404 heat can come from the outside air and/or fromthe ground.

As stated above, there are multiple possible implementations forchanging the temperature inside the delivery container 412. Followingare some implementations for cooling the delivery container. Inparticular, in some examples, the HVAC 402 inputs cold air into thedelivery container 412. In some examples, when the external environment404 temperature is colder than the target temperature for the deliverycontainer 412, cold external air is input to the delivery container 412.In one example, external air includes air inside the autonomous vehicle.In one example, external air includes air outside the autonomousvehicle. The external environment 404 outside air temperature can beaccessed by opening a window of the autonomous vehicle.

In some implementations, the thermal management system 420 sendsinstructions that cause cooling from another source to be transferred tothe delivery container 412. In one example, the thermal managementsystem 420 sends instructions that cause the HVAC 402 to cool thedelivery container 412. In some examples, the thermal management system420 sends instructions that cause external environment 404 air to coolthe delivery container.

In some implementations, one or more of the first 410 a, third 410 c,and fourth 410 d inputs includes a communication link. Information canbe transferred to and/or from the delivery container 412 via thecommunication link. For instance, current temperature inside thedelivery container 412 can be communicated to one or more of the HVACsystem 402 and the onboard computer 406.

FIG. 5 is a diagram illustrating a system 500 for package delivery,according to some embodiments of the disclosure. The system 500 includesa delivery service module 502, remote computing system 504, and anautonomous vehicle internal computing system 510 a, 510 b, 501 c. Thedelivery service module 502 communicates a package delivery request tothe remote computing system 504. The package delivery request identifiescharacteristics about the package including a selected temperature (or aselected temperature range) for the package. In some examples, thepackage delivery request identifies other characteristics such asdimensions and weight of the package.

In some examples, the package delivery request is divided into multiplesubparts and the package delivery request includes differentcharacteristics for each subpart. For example, a package deliveryrequest may be divided into a first subpart that includes a firstselected temperature and a second subpart that includes a secondselected temperature, where the first selected temperature is differentfrom the second selected temperature. In one example, the packagedelivery request is for a food order, and the first subpart includes arequest for a cold temperature, and the second subpart includes arequest for a warm temperature.

The package delivery request generated by the delivery service module502 also includes a package pick up location and a package drop-offlocation. The remote computing system 504 receives the package deliveryrequest from the delivery service module 502, and coordinates theselection of an autonomous vehicle from a fleet of autonomous vehiclesfor pick-up and delivery of the package. In some examples, the remotecomputing system 504 is a central computer such as the central computer210 in FIG. 2 . The remote computing system 504 communicates with theonboard computer 510 a of the selected autonomous vehicle. The remotecomputing system 504 sends a pick-up location to the selected autonomousvehicle onboard computer 510 a.

In some implementations, the remote computing system 504 includes arouting coordinator for planning a route for the selected autonomousvehicle, and the routing coordinator determines a route for theautonomous vehicle to travel from the autonomous vehicle's currentlocation to the pick-up location, and from the pick-up location to thedrop-off location. The remote computing system 504 sends the selectedroute to the autonomous vehicle. According to various implementations,the selected route is periodically updated. In some implementations, theremote computing system sends route plan information such as waypointsto the autonomous vehicle's onboard computer 510 a for guiding theautonomous vehicle through an itinerary. The autonomous vehiclenavigates to the waypoints until it arrives at the destination (thedrop-off location). In some examples, upon arrival at the drop-offlocation, the autonomous vehicle onboard computer 510 a send an arrivalmessage to the remote computing system 504. The remote computing system504 sends an arrival message to the delivery service 502.

In some implementations, once the package arrives at the drop-offlocation, the autonomous vehicle onboard computer initiates a deliveryverification system to collect evidence of delivery of the package, forexample by using a camera on the autonomous vehicle to take a picture ofthe package at drop-off, and/or at its delivery location.

When the remote computing system 504 receives a package delivery requestfrom a delivery service module 502, the remote computing system 504sends the package delivery request information to the selectedautonomous vehicle onboard computer 510 a, including the selectedtemperature (or temperature range) for the package. The selectedtemperature for the package may be input to a thermal management systemfor adjusting the temperature inside the delivery container. In someexamples, the package delivery request includes a request for multiplecompartments in the autonomous vehicle delivery container. The requestfor multiple compartments includes a request for each of the multiplecompartments to have a different selected temperature. In some examples,the selected temperature is a selected temperature range. In someexamples, the selected temperature includes a temperature description.Temperature descriptions include “freezing”, “cold”, “cool”, “roomtemperature”, “warm”, and “hot”.

In some implementations, the remote computing system 504 continues toschedule pick up of passengers around trips to drop off packages. Inthis way, idle time of autonomous vehicles can be minimized since theautonomous vehicles can continue to drop off packages when not utilizedfor passenger transport.

In some implementations, the delivery service module 502 receivesdelivery service requests from one or more users. In some examples, thedelivery service module 502 receives delivery service requests from foodvendors. In some examples, the delivery service module 502 receivesdelivery service requests from individual users. In some examples,delivery service requests are input to the delivery service module 502via a mobile device application or a website.

FIG. 6 is a flow chart illustrating a method 600 of regulatingtemperature for autonomous vehicle delivery, according to someembodiments of the disclosure. At step 602, a delivery service requestis received. The delivery service request includes a selectedtemperature for storing the package to be delivered. In some instances,the package includes multiple items that are packaged separately. Atstep 604, an autonomous vehicle is selected for picking up anddelivering the package. In various examples, the autonomous vehicle isselected by a central computer. In some examples, the autonomous vehicleis selected by a routing coordinator.

At step 606, the selected autonomous vehicle is directed to a pick-uplocation for the package. In some examples, a routing coordinatordetermines the route for the selected autonomous vehicle to travel fromits current location to the pick-up location. At step 608, theautonomous vehicle picks up the package. In some examples, a user placesthe package in a delivery container in the autonomous vehicle. In someexamples, package pick-up is automated. At step 610, the autonomousvehicle is directed to a delivery drop-off location. In some examples, arouting coordinator determines the route for the selected autonomousvehicle to travel from its the pick-up location to the drop-offlocation. The routing coordinator may update the route while theautonomous vehicle is traveling between the pick-up location and thedrop-off location.

After an autonomous vehicle is selected for picking up and deliveringthe package at step 604, at step 612, the temperature of deliverycontainer of the selected autonomous vehicle is adjusted. In particular,the delivery service request includes a selected temperature for thedelivery container, and the temperature of the delivery container beginsto be adjusted while the autonomous vehicle travels to the pick-uplocation. At step 614, the temperature of the delivery container ismonitored. At step 616, it is determined whether the temperature of thedelivery container is within the selected temperature range. In someexamples, at step 616, it is determined whether the temperature of thedelivery container is within one (or two) degrees of the selectedtemperature. If the temperature is within range, the temperaturecontinues to be monitored at step 614. If the temperature is not withinrange, the method 600 returns to step 612, and the temperature of thedelivery container is adjusted.

In some implementations, the delivery service request does not include aselected temperature, and sensors in the delivery container sense theinitial temperature of the package (or goods) placed in the deliverycontainer. The method then sets the initial temperature of the packageas the selected temperature, and monitors and adjusts the temperature tomaintain the initially measured temperature.

In some examples, the temperature of the delivery compartment iscontinuously monitored between the receipt of the pick-up location bythe autonomous vehicle, and the drop-off of the package at the drop-offlocation. In other examples, the temperature of the delivery compartmentis periodically monitored between the receipt of the pick-up location bythe autonomous vehicle, and the drop-off of the package at the drop-offlocation.

At step 620, the package is delivered. The temperature monitoring (andadjusting) of steps 612, 614, and 616 ends when the packaged isdelivered at step 620.

In various implementations, one or more sensors in the autonomousvehicle sense where the package is placed within the vehicle. In oneexample, a seat sensor senses on which seat the delivery is positioned.In some examples, the seat sensor can be one of a weight sensor, apressure sensor, a light sensor, an optical sensor, or any other type ofsensor. In another example, a camera detects where the package isplaced.

In some examples, the location of the package in the vehicle iscorrelated with a nearby localized temperature sensor. Thus, in animplementation with multiple temperature sensors and/or multipletemperature-regulated compartments, a sensor determines the location ofthe package and the area of the vehicle for which the temperature isadjusted specifically for that particular package. In one examples, azone of heating and/or cooling is specified based on sensor datadetermining the location and position of the package. The sensor datamay also determine the size of the package.

FIG. 7 shows an example embodiment of a computing system 700 forimplementing certain aspects of the present technology. In variousexamples, the computing system 700 can be any computing device making upthe onboard computer 104, the central computer 210, the remote computingsystem 504, a device executing the delivery service 502, or any othercomputing system described herein. The computing system 700 can includeany component of a computing system described herein which thecomponents of the system are in communication with each other usingconnection 705. The connection 705 can be a physical connection via abus, or a direct connection into processor 710, such as in a chipsetarchitecture. The connection 705 can also be a virtual connection,networked connection, or logical connection.

In some implementations, the computing system 700 is a distributedsystem in which the functions described in this disclosure can bedistributed within a datacenter, multiple data centers, a peer network,etc. In some embodiments, one or more of the described system componentsrepresents many such components each performing some or all of thefunction for which the component is described. In some embodiments, thecomponents can be physical or virtual devices.

The example system 700 includes at least one processing unit (CPU orprocessor) 710 and a connection 705 that couples various systemcomponents including system memory 715, such as read-only memory (ROM)720 and random access memory (RAM) 725 to processor 710. The computingsystem 700 can include a cache of high-speed memory 712 connecteddirectly with, in close proximity to, or integrated as part of theprocessor 710.

The processor 710 can include any general-purpose processor and ahardware service or software service, such as services 732, 734, and 736stored in storage device 730, configured to control the processor 710 aswell as a special-purpose processor where software instructions areincorporated into the actual processor design. The processor 710 mayessentially be a completely self-contained computing system, containingmultiple cores or processors, a bus, memory controller, cache, etc. Amulti-core processor may be symmetric or asymmetric.

To enable user interaction, the computing system 700 includes an inputdevice 745, which can represent any number of input mechanisms, such asa microphone for speech, a touch-sensitive screen for gesture orgraphical input, keyboard, mouse, motion input, speech, etc. Thecomputing system 700 can also include an output device 735, which can beone or more of a number of output mechanisms known to those of skill inthe art. In some instances, multimodal systems can enable a user toprovide multiple types of input/output to communicate with the computingsystem 700. The computing system 700 can include a communicationsinterface 740, which can generally govern and manage the user input andsystem output. There is no restriction on operating on any particularhardware arrangement, and therefore the basic features here may easilybe substituted for improved hardware or firmware arrangements as theyare developed.

A storage device 730 can be a non-volatile memory device and can be ahard disk or other types of computer readable media which can store datathat are accessible by a computer, such as magnetic cassettes, flashmemory cards, solid state memory devices, digital versatile disks,cartridges, random access memories (RAMs), read-only memory (ROM),and/or some combination of these devices.

The storage device 730 can include software services, servers, services,etc., that when the code that defines such software is executed by theprocessor 710, it causes the system to perform a function. In someembodiments, a hardware service that performs a particular function caninclude the software component stored in a computer-readable medium inconnection with the necessary hardware components, such as a processor710, a connection 705, an output device 735, etc., to carry out thefunction.

As discussed above, each vehicle in a fleet of vehicles communicateswith a routing coordinator. When a vehicle is flagged for service, therouting coordinator schedules the vehicle for service and routes thevehicle to the service center. When the vehicle is flagged formaintenance, a level of importance or immediacy of the service can beincluded. As such, service with a low level of immediacy will bescheduled at a convenient time for the vehicle and for the fleet ofvehicles to minimize vehicle downtime and to minimize the number ofvehicles removed from service at any given time. In some examples, theservice is performed as part of a regularly-scheduled service. Servicewith a high level of immediacy may require removing vehicles fromservice despite an active need for the vehicles.

In some implementations, a package delivery request is assigned a lowerlevel of importance than a passenger ride request. In one example, apackage delivery request for same day delivery of goods which has a widedelivery time window is assigned a lower level of importance than apassenger ride request. In some implementations, a package deliveryrequest is assigned the same level of importance as a passenger riderequest. In some implementations, a package delivery request is assigneda higher level of importance than a passenger ride request. In oneexample, a package delivery request is for quick delivery of freshlyprepared food and is assigned a high level of importance. In anotherexample, a package delivery request is for delivery of biologicalmaterials. Similarly, a package delivery request for delivery ofbiological materials is assigned a high level of importance.

Routing goals may be specific or general in terms of both the vehiclesthey are applied to and over what timeframe they are applied. As anexample of routing goal specificity in vehicles, a routing goal mayapply only to a specific vehicle, or to all vehicles of a specific type,etc. Routing goal timeframe may affect both when the goal is applied(e.g., urgency of the goal, or, some goals may be ‘active’ only duringset times) and how the goal is evaluated (e.g., for a longer-term goal,it may be acceptable to make some decisions that do not optimize for thegoal in the short term, but may aid the goal in the long term).Likewise, routing vehicle specificity may also affect how the goal isevaluated; e.g., decisions not optimizing for a goal may be acceptablefor some vehicles if the decisions aid optimization of the goal acrossan entire fleet of vehicles.

In various implementations, the routing coordinator is a remote serveror a distributed computing system connected to the autonomous vehiclesvia an internet connection. In some implementations, the routingcoordinator is any suitable computing system. In some examples, therouting coordinator is a collection of autonomous vehicle computersworking as a distributed system.

As described herein, one aspect of the present technology is thegathering and use of data available from various sources to improvequality and experience. The present disclosure contemplates that in someinstances, this gathered data may include personal information. Thepresent disclosure contemplates that the entities involved with suchpersonal information respect and value privacy policies and practices.

SELECT EXAMPLES

Example 1 provides a method for regulating temperature in for autonomousvehicle delivery including receiving a delivery request including aselected temperature, selecting an autonomous vehicle to fulfill thedelivery request, wherein the autonomous vehicle has a deliverycontainer, directing the selected autonomous vehicle to a pick-uplocation, adjusting a delivery container temperature to correspond tothe selected temperature, and transporting a package in the deliverycontainer to a drop off location.

Example 2 provides a method according to example 1, further comprisingmonitoring the delivery container temperature. In some examples, athermal management system monitors the delivery container temperature.

Example 3 provides a method according to examples 1-2, whereinmonitoring the delivery container temperature includes one ofcontinuously monitoring the delivery container temperature andperiodically monitoring the delivery container temperature.

Example 4 provides a method according to examples 1-3, further includingdetermining whether the delivery container temperature corresponds tothe selected temperature and outputting a determination.

Example 5 provides a method according to one or more preceding examples,where adjusting a delivery container temperature is based at least inpart on the determination.

Example 6 provides a method according to one or more preceding examples,where the selected temperature includes a temperature range.

Example 7 provides a method according to one or more preceding examples,where adjusting the delivery container temperature includes one ofheating the delivery container and cooling the delivery container.

Example 8 provides a method according to one or more preceding examples,where adjusting the delivery container temperature includes receiving aninput from an HVAC system.

Example 9 provides a method according to one or more preceding examples,where adjusting the delivery container temperature includes increasingthe delivery container temperature by utilizing heat generated by atleast one of an onboard computer and a battery.

Example 10 provides a method according to one or more precedingexamples, where adjusting the delivery container temperature includesutilizing an external environment temperature and inputting the externalenvironment temperature to the delivery container.

Example 11 provides a method according to one or more precedingexamples, where the external environment includes air inside theautonomous vehicle.

Example 12 provides a method according to one or more precedingexamples, where external environment includes air outside the autonomousvehicle.

Example 13 provides a method according to one or more precedingexamples, where the delivery container includes a first compartment anda second compartment, and where adjusting the delivery containertemperature includes: adjusting a first temperature of the firstcompartment, and adjusting a second temperature of the secondcompartment.

Example 14 provides a method according to one or more precedingexamples, where the first temperature is different from the secondtemperature.

Example 15 provides a system for autonomous vehicle delivery, includinga plurality of autonomous vehicles each having a respective deliverycontainer and a remote computing system. The remote computing system isconfigured to receive a package delivery request including a selectedtemperature, select an autonomous vehicle from the plurality ofautonomous vehicles to fulfill the package delivery request, and directthe selected autonomous vehicle to a pick-up location. Each of theplurality of autonomous vehicles is configured to adjust a deliverycontainer temperature of the respective delivery container to correspondto the selected temperature, and transport a package in the respectivedelivery container to a drop off location

Example 16 provides a system according to one or more precedingexamples, where the respective delivery container includes a firstcompartment and a second compartment, and wherein each of the pluralityof autonomous vehicles is configured to adjust the delivery containertemperature by adjusting a first temperature of the first compartment,and adjusting a second temperature of the second compartment.

Example 17 provides a system according to one or more precedingexamples, where each of the plurality of autonomous vehicles includes athermal management system, and wherein the thermal management systemadjusts the delivery container temperature.

Example 18 provides a system according to one or more precedingexamples, where the thermal management system uses thermal energy fromone of a battery, an onboard computer, and an external environment toadjust the delivery container temperature.

Example 19 provides a vehicle for delivering packages including adelivery container, wherein an inside of the delivery container istemperature regulated, a processor for receiving a routing instructionincluding a selected temperature for the delivery container andmonitoring a delivery container temperature, and a thermal managementsystem for adjusting the delivery container temperature.

Example 20 provides a vehicle according to one or more precedingexamples, where the thermal management system further manages a batterytemperature and an onboard computer temperature.

VARIATIONS AND IMPLEMENTATIONS

According to various examples, driving behavior includes any informationrelating to how an autonomous vehicle drives. For example, drivingbehavior includes how and when the autonomous vehicle actuates itsbrakes and its accelerator, and how it steers. In particular, theautonomous vehicle is given a set of instructions (e.g., a route orplan), and the driving behavior determines how the set of instructionsis implemented to drive the car to and from various destinations, and,potentially, to stop for passengers or items. Driving behavior mayinclude a description of a controlled operation and movement of anautonomous vehicle and the manner in which the autonomous vehicleapplies traffic rules during one or more driving sessions. Drivingbehavior may additionally or alternatively include any information abouthow an autonomous vehicle calculates routes (e.g., prioritizing fastesttime vs. shortest distance), other autonomous vehicle actuation behavior(e.g., actuation of lights, windshield wipers, traction controlsettings, etc.) and/or how an autonomous vehicle responds toenvironmental stimulus (e.g., how an autonomous vehicle behaves if it israining, or if an animal jumps in front of the vehicle). Some examplesof elements that may contribute to driving behavior include accelerationconstraints, deceleration constraints, speed constraints, steeringconstraints, suspension settings, routing preferences (e.g., scenicroutes, faster routes, no highways), lighting preferences, “legalambiguity” conduct (e.g., in a solid-green left turn situation, whethera vehicle pulls out into the intersection or waits at the intersectionline), action profiles (e.g., how a vehicle turns, changes lanes, orperforms a driving maneuver), and action frequency constraints (e.g.,how often a vehicle changes lanes).

As will be appreciated by one skilled in the art, aspects of the presentdisclosure, in particular aspects of a perception system for anautonomous vehicle, described herein, may be embodied in various manners(e.g., as a method, a system, a computer program product, or acomputer-readable storage medium). Accordingly, aspects of the presentdisclosure may take the form of an entirely hardware embodiment, anentirely software embodiment (including firmware, resident software,micro-code, etc.) or an embodiment combining software and hardwareaspects that may all generally be referred to herein as a “circuit,”“module” or “system.” Functions described in this disclosure may beimplemented as an algorithm executed by one or more hardware processingunits, e.g. one or more microprocessors, of one or more computers. Invarious embodiments, different steps and portions of the steps of eachof the methods described herein may be performed by different processingunits. Furthermore, aspects of the present disclosure may take the formof a computer program product embodied in one or more computer readablemedium(s), preferably non-transitory, having computer readable programcode embodied, e.g., stored, thereon. In various embodiments, such acomputer program may, for example, be downloaded (updated) to theexisting devices and systems (e.g. to the existing perception systemdevices and/or their controllers, etc.) or be stored upon manufacturingof these devices and systems.

The following detailed description presents various descriptions ofspecific certain embodiments. However, the innovations described hereincan be embodied in a multitude of different ways, for example, asdefined and covered by the claims and/or select examples. In thefollowing description, reference is made to the drawings where likereference numerals can indicate identical or functionally similarelements. It will be understood that elements illustrated in thedrawings are not necessarily drawn to scale. Moreover, it will beunderstood that certain embodiments can include more elements thanillustrated in a drawing and/or a subset of the elements illustrated ina drawing. Further, some embodiments can incorporate any suitablecombination of features from two or more drawings.

The preceding disclosure describes various illustrative embodiments andexamples for implementing the features and functionality of the presentdisclosure. While particular components, arrangements, and/or featuresare described below in connection with various example embodiments,these are merely examples used to simplify the present disclosure andare not intended to be limiting. It will of course be appreciated thatin the development of any actual embodiment, numerousimplementation-specific decisions must be made to achieve thedeveloper's specific goals, including compliance with system, business,and/or legal constraints, which may vary from one implementation toanother. Moreover, it will be appreciated that, while such a developmenteffort might be complex and time-consuming; it would nevertheless be aroutine undertaking for those of ordinary skill in the art having thebenefit of this disclosure.

In the Specification, reference may be made to the spatial relationshipsbetween various components and to the spatial orientation of variousaspects of components as depicted in the attached drawings. However, aswill be recognized by those skilled in the art after a complete readingof the present disclosure, the devices, components, members,apparatuses, etc. described herein may be positioned in any desiredorientation. Thus, the use of terms such as “above”, “below”, “upper”,“lower”, “top”, “bottom”, or other similar terms to describe a spatialrelationship between various components or to describe the spatialorientation of aspects of such components, should be understood todescribe a relative relationship between the components or a spatialorientation of aspects of such components, respectively, as thecomponents described herein may be oriented in any desired direction.When used to describe a range of dimensions or other characteristics(e.g., time, pressure, temperature, length, width, etc.) of an element,operations, and/or conditions, the phrase “between X and Y” represents arange that includes X and Y.

Other features and advantages of the disclosure will be apparent fromthe description and the claims. Note that all optional features of theapparatus described above may also be implemented with respect to themethod or process described herein and specifics in the examples may beused anywhere in one or more embodiments.

The ‘means for’ in these instances (above) can include (but is notlimited to) using any suitable component discussed herein, along withany suitable software, circuitry, hub, computer code, logic, algorithms,hardware, controller, interface, link, bus, communication pathway, etc.In a second example, the system includes memory that further comprisesmachine-readable instructions that when executed cause the system toperform any of the activities discussed above.

1.-20 (canceled)
 21. A method for regulating temperature for autonomousvehicle delivery, comprising: receiving a delivery request including aselected temperature; selecting an autonomous vehicle to fulfill thedelivery request, wherein the autonomous vehicle has a deliverycontainer; measuring a delivery container temperature at a thermalmanagement system; determining, at the thermal management system,external temperatures external to the delivery container, including:determining a surrounding environment air temperature, wherein asurrounding environment is an area adjacent to an exterior of thedelivery container inside the autonomous vehicle, and determining anoutside air temperature, wherein outside air is exterior to theautonomous vehicle; and determining, at the thermal management system,that at least one of air from the surrounding environment and outsideair can be used to adjust the delivery container temperature closer tothe selected temperature; adjusting, by the thermal management system,the delivery container temperature to correspond to the selectedtemperature, wherein adjusting the delivery container temperatureincludes: inputting to the delivery container, via an input line, atleast one of air from the surrounding environment and outside air. 22.The method of claim 21, wherein the input line is to connect thedelivery container with at least one of: air from the surroundingenvironment and outside air,
 23. The method of claim 21, wherein theselected temperature includes a temperature range.
 24. The method ofclaim 21, wherein adjusting the delivery container temperature includesreceiving an input from an HVAC system.
 25. The method of claim 21,further comprising determining whether the delivery containertemperature corresponds to the selected temperature and outputting adetermination.
 26. The method of claim 25, wherein adjusting a deliverycontainer temperature is based at least in part on the determination.27. The method of claim 21, wherein adjusting, by the thermal managementsystem, further comprises utilizing heat generated by an onboardcomputer.
 28. The method of claim 21, wherein adjusting, by the thermalmanagement system, further comprises utilizing heat generated by avehicle battery.
 29. The method of claim 21, wherein adjusting, by thethermal management system, further comprises sending instructions thatcause one of air from the surrounding environment and outside air toenter the delivery container via the input line.
 30. The method of claim21, wherein the delivery container includes a first compartment and asecond compartment, and wherein adjusting the delivery containertemperature further comprises: adjusting a first temperature of thefirst compartment, and adjusting a second temperature of the secondcompartment.
 31. The method of claim 30, wherein the first temperatureis different from the second temperature.
 32. A system for autonomousvehicle delivery, comprising: a plurality of autonomous vehicles eachhaving a respective delivery container, each delivery container havingan input line configured to connect the delivery container with at leastone of air from the surrounding environment and outside air; and aremote computing system configured to: receive a package deliveryrequest including a selected temperature, and select an autonomousvehicle from the plurality of autonomous vehicles to fulfill the packagedelivery request, wherein each of the plurality of autonomous vehiclesis configured to: measure a delivery container temperature of therespective delivery container; determine external temperatures externalto the respective delivery container, including: determine a surroundingenvironment air temperature, wherein a surrounding environment is anarea adjacent to an exterior of the respective delivery container insidethe respective autonomous vehicle, determine an outside air temperature,wherein outside air is exterior to the respective autonomous vehicle;and determine that at least one of air from the surrounding environmentand outside air can be used to adjust the delivery container temperaturecloser to the selected temperature; adjust a delivery containertemperature of the respective delivery container to correspond to theselected temperature, wherein adjusting the delivery containertemperature includes: inputting to the delivery container, via the inputline at least one of air from the surrounding environment and outsideair.
 33. The system of claim 32, wherein the respective deliverycontainer includes a first compartment and a second compartment, andwherein each of the plurality of autonomous vehicles is configured toadjust the delivery container temperature of the respective deliverycontainer by adjusting a first temperature of the first compartment andadjusting a second temperature of the second compartment.
 34. The systemof claim 32, wherein each of the plurality of autonomous vehiclesincludes a thermal management system, and wherein the thermal managementsystem adjusts the delivery container temperature.
 35. The system ofclaim 34, wherein the thermal management system uses heat generated byan onboard computer to adjust the delivery container temperature. 36.The system of claim 34, wherein the thermal management system uses heatgenerated by a vehicle battery to adjust the delivery containertemperature.
 37. A vehicle for delivering packages, comprising: adelivery container including an input line configured to connect thedelivery container with at least one of air from the surroundingenvironment and outside air, wherein an inside of the delivery containeris temperature regulated; a processor for receiving a routinginstruction including a selected temperature for the delivery containerand monitoring a delivery container temperature; and a thermalmanagement system for adjusting the delivery container temperature,wherein the thermal management system is configured to: determine asurrounding environment air temperature, wherein a surroundingenvironment is an area adjacent to an exterior of the delivery containerinside the autonomous vehicle, determine an outside air temperature,wherein outside air is exterior to the autonomous vehicle, determinethat at least one of air from the surrounding environment and outsideair can be used to adjust the delivery container temperature closer tothe selected temperature; adjust the delivery container temperature tocorrespond to the selected temperature by inputting, via the input line,at least one of air from the surrounding environment and outside air.38. The vehicle of claim 37, wherein the thermal management system isfurther configured to determine whether the delivery containertemperature corresponds to the selected temperature and output adetermination.
 39. The vehicle of claim 37, wherein the thermalmanagement system uses heat generated by an onboard computer to adjustthe delivery container temperature.
 40. The vehicle of claim 37, whereinthe thermal management system uses heat generated by a vehicle batteryto adjust the delivery container temperature.